let fs = require('fs');
let path = 'D:/js/datas';
// readAllFiles(path)
/**
 * 遍历路径下所有的文件
 * @param {*} path 
 */
function readAllFiles(path) {
    let components = []
    // 遍历路径下的所有文件
    let files = fs.readdirSync(path);
    files.forEach(function (item, index) {
        let file = `${path}/${item}`
        let stat = fs.lstatSync(file);
        if (stat.isDirectory()) {
            components.push(file)
        } else {
            modifyTitleByFileName(file);
        }
    })
}

/**
 * 根据用例文件名修改表内的name、id 属性
 */
function modifyTitleByFileName(file) {
    // 获取文件名
    let endway = file.lastIndexOf("/");
    let filename = file.slice(endway+1);
    // 根据文件名修改name id 属性
    let obj = JSON.parse(fs.readFileSync(file));
    if(!(obj.name || obj.id)) return false;
    // 修改用例名称
    obj.name = filename;
    let temp = filename.substring(0,filename.lastIndexOf("_"));
    let silver = temp.lastIndexOf("_");
    filename.substring(0,silver);
    let pre = filename.substring(0,12);
    let endpoint = filename.lastIndexOf(".");
    let rear = filename.substring(silver,endpoint);
    // 修改用例编号
    console.log(rear);
    obj.id = pre+rear;
    // 将修改后的内容写入到文件中
    try {
        fs.writeFileSync(file,JSON.stringify(obj))
    }catch(err){
        console.log(err)
    }
}

str = "D:/js/datas/hello.json"
/**
 * 获取第n个字符后的字符串
 * @param {*} str 
 */
function testRegex(str) {
    // 获取第二个'/'后的字符串
    // let regex = /.*\/.*\/(.*)/g;
    // console.log(str.match(regex));
    var file_name=str.replace(/(.*\/)*([^.]+).*/ig,"$2");
    console.log(file_name);
}
testRegex(str);


